bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Sat, 8 Nov 2025 13:36:04 +0000 (14:36 +0100)
committerMatthias Klose <doko@debian.org>
Sat, 8 Nov 2025 13:36:04 +0000 (14:36 +0100)
commitc348213856780ab7343eaaab54972f81eb8791d9
treef461f299a74b3ebcf61810a39813989d710cffe6
parenteb76db9776b5dd029489374b809b7e83f858aca1
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h